<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Navo Portable Library: navo/algorithm/linear/sequence/dlseq.h文件参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- 制作者 Doxygen 1.7.3 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'搜索');
--></script>
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Navo Portable Library&#160;<span id="projectnumber">Ver 1.0.20120827</span></div>
   <div id="projectbrief">Provides generic platform independent facilities.</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>首页</span></a></li>
      <li><a href="modules.html"><span>模块</span></a></li>
      <li><a href="annotated.html"><span>数据结构</span></a></li>
      <li class="current"><a href="files.html"><span>文件</span></a></li>
      <li id="searchli">
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="搜索" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>文件列表</span></a></li>
      <li><a href="globals.html"><span>全局定义</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#define-members">宏定义</a> &#124;
<a href="#func-members">函数</a>  </div>
  <div class="headertitle">
<h1>navo/algorithm/linear/sequence/dlseq.h文件参考</h1>  </div>
</div>
<div class="contents">

<p>Double-ended linear sequence list.  
<a href="#_details">更多...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="cdef_8h_source.html">../../../port/cdef.h</a>&quot;</code><br/>
<code>#include &lt;string.h&gt;</code><br/>
</div>
<p><a href="dlseq_8h_source.html">浏览该文件的源代码。</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="define-members"></a>
宏定义</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a97b92e9e5e98efb1640f6d669cfc846a"></a><!-- doxytag: member="dlseq.h::__NV_DLSEQ__" ref="a97b92e9e5e98efb1640f6d669cfc846a" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>__NV_DLSEQ__</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa9af64320d2e9425bd7bdd61b1911dda">dlseq_iter</a>(type)&#160;&#160;&#160;type *</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">定义type类型迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa9af64320d2e9425bd7bdd61b1911dda"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3437c799d3e0d406d09c5ca77229df31">dlseq_head</a>(type)&#160;&#160;&#160;struct { type * first; type * last; type * end; type * base; }</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">type类型表头  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3437c799d3e0d406d09c5ca77229df31"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae82111648a741688ce3924aafdd5494f">dlseq</a>&#160;&#160;&#160;dlseq_head</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">同dlseq_head  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae82111648a741688ce3924aafdd5494f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa216302ea43c71dc4805b478885559f4">DLSEQ_HEAD</a>(type, name, arr)&#160;&#160;&#160;dlseq_head(type) name = {arr, arr, &amp;arr[count_of(arr)], arr}</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">定义一个名为name的表头，并对其初始化  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa216302ea43c71dc4805b478885559f4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac7d0810e0d8768918cba80c88652a262">DLSEQ</a>&#160;&#160;&#160;DLSEQ_HEAD</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">同DLSEQ_HEAD  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac7d0810e0d8768918cba80c88652a262"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaf69ab959476f5ca5a5ed257f00403cea">dlseq_pr1</a>(type)&#160;&#160;&#160;int (*)(type *)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">单参数回调函数指针类型  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaf69ab959476f5ca5a5ed257f00403cea"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae8922449d1b0a688414b4e9ce517e152">dlseq_pr2</a>(type)&#160;&#160;&#160;int (*)(type *, type *)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">双参数回调函数指针类型  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae8922449d1b0a688414b4e9ce517e152"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab03ca90ffa81b6e8a318f85afcaa7804"></a><!-- doxytag: member="dlseq.h::DLSEQ_CHECK_PASS" ref="gab03ca90ffa81b6e8a318f85afcaa7804" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DLSEQ_CHECK_PASS</b>&#160;&#160;&#160;0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf4e557a7fcfd1ed3dc9819cd328289a1"></a><!-- doxytag: member="dlseq.h::DLSEQ_CHECK_INVALID" ref="gaf4e557a7fcfd1ed3dc9819cd328289a1" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DLSEQ_CHECK_INVALID</b>&#160;&#160;&#160;1</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga37ec750e10b0d0d8fa84cfe32339f152"></a><!-- doxytag: member="dlseq.h::DLSEQ_CHECK_OVERFLOW" ref="ga37ec750e10b0d0d8fa84cfe32339f152" args="" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>DLSEQ_CHECK_OVERFLOW</b>&#160;&#160;&#160;2</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga445d19b93a297685508fa4c4440e633e">dlseq_check</a>(head)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">检查表  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga445d19b93a297685508fa4c4440e633e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga76d23d6cbe36669ffdd7319e48ca6f14">dlseq_reset</a>(head, _base, _first, _last, _end)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">重置表头  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga76d23d6cbe36669ffdd7319e48ca6f14"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3cc1579b04bc1c6992a481f176a1feab">dlseq_init</a>(type, head, base, size, _first)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">初始化表  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3cc1579b04bc1c6992a481f176a1feab"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gabf5ed6c58292209957b42e4d48c2d1a1">dlseq_init_serial</a>(type, head, base, size, cnt)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">作为序列来初始化表  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gabf5ed6c58292209957b42e4d48c2d1a1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga889a2f601d1d09072124ef08ddc584e6">DLSEQ_INIT</a>(type, head, arr, _first)&#160;&#160;&#160;dlseq_init(type, head, arr, count_of(arr), _first)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">初始化表  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga889a2f601d1d09072124ef08ddc584e6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gab10a512399502928d8663659815ebaea">DLSEQ_INIT_SERIAL</a>(type, head, arr, cnt)&#160;&#160;&#160;dlseq_init_serial(type, head, arr, count_of(arr), cnt)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">初始化序列  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gab10a512399502928d8663659815ebaea"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac0cde607f5cd2c7c915763b5bf554036">dlseq_clear</a>(head)&#160;&#160;&#160;((head)-&gt;last = (head)-&gt;first = (head)-&gt;base)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">清空表  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac0cde607f5cd2c7c915763b5bf554036"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga484f9e8336a526af76143a85170165a7">dlseq_base</a>(head)&#160;&#160;&#160;((head)-&gt;base)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获得表的缓存基址  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga484f9e8336a526af76143a85170165a7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga0fcd66f91e5863d48fb4730721655885">dlseq_count</a>(head)&#160;&#160;&#160;((size_t)((head)-&gt;last - (head)-&gt;first))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取表的节点总数  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga0fcd66f91e5863d48fb4730721655885"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga2be894336225299ffb21b4c3e79213ac">dlseq_size</a>(head)&#160;&#160;&#160;((size_t)((head)-&gt;end - (head)-&gt;base))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取表的缓存长度  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga2be894336225299ffb21b4c3e79213ac"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga68218badfdc550c54b6b6911cc67ff2e">dlseq_capacity</a>(head)&#160;&#160;&#160;dlseq_size(head)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取表的节点容量  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga68218badfdc550c54b6b6911cc67ff2e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga093081eb99a26f23856a62408d5b1afd">dlseq_remain</a>(head)&#160;&#160;&#160;(dlseq_size(head) - dlseq_count(head))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取表的剩余容量  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga093081eb99a26f23856a62408d5b1afd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa98669095b34719d99d6ea02df035866">dlseq_front_remain</a>(head)&#160;&#160;&#160;((size_t)((head)-&gt;first - (head)-&gt;base))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取表的首部剩余容量  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa98669095b34719d99d6ea02df035866"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3c099faa672dbfa60c279736e5c99468">dlseq_back_remain</a>(head)&#160;&#160;&#160;((size_t)((head)-&gt;end - (head)-&gt;last))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取表的尾部剩余容量  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3c099faa672dbfa60c279736e5c99468"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3ff49337827821b5c85223648b9cdb5d">dlseq_empty</a>(head)&#160;&#160;&#160;((head)-&gt;first &gt;= (head)-&gt;last)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断表是否为空  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3ff49337827821b5c85223648b9cdb5d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga7a3ba80c90026c606c80382c4aafdcfb">dlseq_full</a>(head)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断表是否已满  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga7a3ba80c90026c606c80382c4aafdcfb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga770435a02333a6ec38a68feb239ce2c1">dlseq_singular</a>(head)&#160;&#160;&#160;((head)-&gt;last == ((head)-&gt;first + 1))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断表是否只有单个节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga770435a02333a6ec38a68feb239ce2c1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8de169a8b75e0224c0165711ca292a86">dlseq_sortable</a>(head)&#160;&#160;&#160;((head)-&gt;last &gt; ((head)-&gt;first + 1))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断表是否可以被排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8de169a8b75e0224c0165711ca292a86"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga875099205528c98db45f9b1aeeb9447b">dlseq_insertable</a>(head, cnt)&#160;&#160;&#160;(dlseq_size(head) &gt;= (dlseq_count(head) + (cnt)))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断表是否可以插入一定数量的节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga875099205528c98db45f9b1aeeb9447b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad422c134a4ced1d538b07e6298bc6e2c">dlseq_serialable</a>(head)&#160;&#160;&#160;((head)-&gt;last &gt; (head)-&gt;first)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断表是否可以序列化  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad422c134a4ced1d538b07e6298bc6e2c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad547e1522c3eab4845970c2cb2ff8ec1">dlseq_copyable</a>(dst, src)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断源表是否可以深拷贝到目标表  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad547e1522c3eab4845970c2cb2ff8ec1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad1795ff276106c853f99d2d07cc56f55">dlseq_at</a>(head, index)&#160;&#160;&#160;((head)-&gt;first + (index))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">根据正向索引获取迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad1795ff276106c853f99d2d07cc56f55"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaf6cbffa09f64b0f662d7aec3388a6181">dlseq_reverse_at</a>(head, index)&#160;&#160;&#160;((head)-&gt;last - ((index) + 1))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">根据逆向索引获取迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaf6cbffa09f64b0f662d7aec3388a6181"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gadf3fc42eed9528f855e6177475a000cc">dlseq_index_of</a>(head, itr)&#160;&#160;&#160;((itr) - (head)-&gt;first)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取迭代器对应的正向索引  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gadf3fc42eed9528f855e6177475a000cc"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8b69fd9bf58887771467282d840fff39">dlseq_reverse_index_of</a>(head, itr)&#160;&#160;&#160;((head)-&gt;last - ((itr) + 1))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取迭代器对应的逆向索引  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8b69fd9bf58887771467282d840fff39"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga7459e680b7dff4ea06a41e6d1a72d8e3">dlseq_exist</a>(head, itr)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断迭代器对应的节点是否存在于表中  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga7459e680b7dff4ea06a41e6d1a72d8e3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac00cf6a77aa59cf460e06270212b6aec">dlseq_distance</a>(first, last)&#160;&#160;&#160;((size_t)((last) - (first)) + 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">计算两个节点的迭代距离  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac00cf6a77aa59cf460e06270212b6aec"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga2f78c1229cdf3f7d3c294fc0927fe307">dlseq_insert</a>(type, head, pos, newly)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">在指定位置插入节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga2f78c1229cdf3f7d3c294fc0927fe307"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga2a6d392893da6b1cd4fc77aba5f698b8">dlseq_erase</a>(type, head, pos)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">删除指定位置的节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga2a6d392893da6b1cd4fc77aba5f698b8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga301222520cc0fbbc628a7f5459d6d677">dlseq_inserts</a>(type, head, pos, src, cnt)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">在指定位置连续插入多个节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga301222520cc0fbbc628a7f5459d6d677"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga13b81f9dcaa7ff0b0592d56d28814760">dlseq_erases</a>(type, head, _begin, _end)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">连续删除指定位置的多个节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga13b81f9dcaa7ff0b0592d56d28814760"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaac57c5095ae4294fe288ad938fac61d4">dlseq_splice</a>(type, dst, pos, src, _first, _last)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">移接一段序列[first, last]到目标位置。 这可以发生在同一个序表中，也可以在不同的序表之间  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaac57c5095ae4294fe288ad938fac61d4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gab676285a57db869dccb71427c0654794">dlseq_appends</a>(type, head, src, cnt)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">在表尾添加多个节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gab676285a57db869dccb71427c0654794"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga80ce7977d2edd851be98ded3c8390030">dlseq_append</a>(head, newly)&#160;&#160;&#160;(*((head)-&gt;last++) = (newly))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">在表尾添加新节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga80ce7977d2edd851be98ded3c8390030"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac5a831831e84c67739553b3de4e252d9">dlseq_copy</a>(type, dst, src)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">深拷贝源表的节点到目标表  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac5a831831e84c67739553b3de4e252d9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga1ffc7ba150c4254c36b1bceb1f3e0ba3">dlseq_push_front</a>(head)&#160;&#160;&#160;(--(head)-&gt;first)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取指向表首插入节点位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga1ffc7ba150c4254c36b1bceb1f3e0ba3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga65bbbab96c82c62d05b0412cb2c263a1">dlseq_push_back</a>(head)&#160;&#160;&#160;((head)-&gt;last++)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取指向表尾插入节点位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga65bbbab96c82c62d05b0412cb2c263a1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac73e9d7e34f9441d1a0c9f85dfc8ca65">dlseq_pop_front</a>(head)&#160;&#160;&#160;((head)-&gt;first++)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取指向表首节点位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gac73e9d7e34f9441d1a0c9f85dfc8ca65"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga359a8bae60736d1abd3211cb526cb295">dlseq_pop_back</a>(head)&#160;&#160;&#160;(--(head)-&gt;last)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取指向表尾节点位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga359a8bae60736d1abd3211cb526cb295"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga47b7a737affe0b4d4254330362a639d3">dlseq_iter_replace</a>(victim, newly)&#160;&#160;&#160;(*(victim) = (newly))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">用新节点替换目标节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga47b7a737affe0b4d4254330362a639d3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><b>__dlseq_iter_swap</b>(type, a, b)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaf1ec6d8c982f4c3b3bf9a774f3556d83">dlseq_iter_swap</a>(type, a, b)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">用新节点替换目标节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaf1ec6d8c982f4c3b3bf9a774f3556d83"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga93f49440956f625d85ecd6c56a6a557b">dlseq_replace</a>(victim, newly)&#160;&#160;&#160;(*(victim) = *(newly))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">用新表头替换目标表头  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga93f49440956f625d85ecd6c56a6a557b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3b6c7e04f4f0b4f09a2dfd96cdbd2f48">dlseq_swap</a>(type, a, b)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">交换两个表头  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga3b6c7e04f4f0b4f09a2dfd96cdbd2f48"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga75e1528caa8626fb419cca8dc20cdf92">dlseq_front</a>(head)&#160;&#160;&#160;((head)-&gt;first)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到表首节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga75e1528caa8626fb419cca8dc20cdf92"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga32ba395611eaf4595297f01765cc46b3">dlseq_back</a>(head)&#160;&#160;&#160;((head)-&gt;last - 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到表首节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga32ba395611eaf4595297f01765cc46b3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga6474f4beeadeb8b3be6baa1a375a16ed">dlseq_begin</a>(head)&#160;&#160;&#160;dlseq_front(head)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到指向正向起始位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga6474f4beeadeb8b3be6baa1a375a16ed"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8df3a77782b4f5626a1e3a8c6f0aa18d">dlseq_end</a>(head)&#160;&#160;&#160;((head)-&gt;last)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到指向正向终止位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8df3a77782b4f5626a1e3a8c6f0aa18d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad46f419b47937396e808b278b799c9a1">dlseq_end_of</a>(itr)&#160;&#160;&#160;((itr) + 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到指向当前节点的正向终止位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad46f419b47937396e808b278b799c9a1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8985a9f0fe4e6ad0604812db85008bf5">dlseq_rbegin</a>(head)&#160;&#160;&#160;dlseq_back(head)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到指向逆向起始位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8985a9f0fe4e6ad0604812db85008bf5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gacddec11d890f47536009ac2c4a4be320">dlseq_rend</a>(head)&#160;&#160;&#160;((head)-&gt;first - 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到指向逆向起始位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gacddec11d890f47536009ac2c4a4be320"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae4d086dbf72b7d1a1e5a3e60bf1240c5">dlseq_rend_of</a>(itr)&#160;&#160;&#160;((itr) - 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到指向当前节点的逆向终止位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae4d086dbf72b7d1a1e5a3e60bf1240c5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga9ce07f7c9c2517cc61557bb9ee5d1248">dlseq_next</a>(itr)&#160;&#160;&#160;((itr) + 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取当前节点的后继节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga9ce07f7c9c2517cc61557bb9ee5d1248"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga333294fd96e85f7314e6f6cc7e5f9d82">dlseq_prev</a>(itr)&#160;&#160;&#160;((itr) - 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">获取当前节点的前驱节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga333294fd96e85f7314e6f6cc7e5f9d82"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8d6b85ec3412d57a90c7af5282a7bfd6">dlseq_advance</a>(cur, dist)&#160;&#160;&#160;((cur) + (dist))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">给迭代器增加一段距离或减小一段距离  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga8d6b85ec3412d57a90c7af5282a7bfd6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga643c9d33c7a1ac060d44dda56ae11c4f">DLSEQ_NOT_END</a>(itr, end)&#160;&#160;&#160;((itr) &lt; (end))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">迭代结束条件  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga643c9d33c7a1ac060d44dda56ae11c4f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga51fa2c1938f25c3658d8bbd5c75f9c9b">DLSEQ_NOT_REND</a>(itr, rend)&#160;&#160;&#160;((itr) &gt; (rend))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">逆向迭代结束条件  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga51fa2c1938f25c3658d8bbd5c75f9c9b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga01ab03ece963941926de7996cdb7f1c0">dlseq_inc</a>(itr)&#160;&#160;&#160;(++(itr))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">迭代器递增  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga01ab03ece963941926de7996cdb7f1c0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga37f4f964e40c0127fe53f972c1ce3564">dlseq_dec</a>(itr)&#160;&#160;&#160;(--(itr))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">迭代器递减  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga37f4f964e40c0127fe53f972c1ce3564"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa6bb2aa8b6e1b9eecba00c50135fc17b">dlseq_add</a>(itr, cnt)&#160;&#160;&#160;((itr) += (cnt))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">迭代器增加  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa6bb2aa8b6e1b9eecba00c50135fc17b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga387e19749450fd5d184daa1fa55f616e">dlseq_sub</a>(itr, cnt)&#160;&#160;&#160;((itr) -= (cnt))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">迭代器减小  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga387e19749450fd5d184daa1fa55f616e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga5ac7e6ad6068260172a91d0cdd6409d0">dlseq_inc_later</a>(itr)&#160;&#160;&#160;((itr)++)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">迭代器后递增  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga5ac7e6ad6068260172a91d0cdd6409d0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad5280822494b200f031a16a1312505b2">dlseq_dec_later</a>(itr)&#160;&#160;&#160;((itr)--)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">迭代器后递减  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad5280822494b200f031a16a1312505b2"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga6c72b56a6426b9cca6aa338282809b5a">dlseq_add_later</a>(itr, cnt)&#160;&#160;&#160;(dlseq_add(itr, cnt) - (cnt))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">迭代器后增加  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga6c72b56a6426b9cca6aa338282809b5a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga892a66d0a679113f3959bdc30528c218">dlseq_sub_later</a>(itr, cnt)&#160;&#160;&#160;(dlseq_sub(itr, cnt) + (cnt))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">迭代器后减少  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga892a66d0a679113f3959bdc30528c218"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga831b9c1bcf432adf5a9856f0415464f0">dlseq_foreach</a>(type, begin, end, fn)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">正向遍历begin到end的节点， 并为每一个节点调用回调函数或宏  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga831b9c1bcf432adf5a9856f0415464f0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad4ff379776899de6d39d9aa14fe34993">dlseq_reverse_foreach</a>(type, rbegin, rend, fn)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">逆向遍历rbegin到rend的节点， 并为每一个节点调用回调函数或宏  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad4ff379776899de6d39d9aa14fe34993"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga39a31078b854331a7545bf39fca28e1c">dlseq_search</a>(type, begin, end, equal, var, res)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">顺序查找区域内的指定节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga39a31078b854331a7545bf39fca28e1c"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga1ca62ed17125c8f59557e1b970fd4d45">dlseq_binary_search</a>(type, begin, end, greater, var, res)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">二分查找区域内的指定节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga1ca62ed17125c8f59557e1b970fd4d45"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga678f3f705968d3f7d63ad6dae67c1a3e">dlseq_vbegin</a>(head)&#160;&#160;&#160;dlseq_begin(head)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到正反转的起始迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga678f3f705968d3f7d63ad6dae67c1a3e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga9da7efbb8d187840982f9dcb8cdd6813">dlseq_rvbegin</a>(head)&#160;&#160;&#160;dlseq_rbegin(head)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到逆反转的起始迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga9da7efbb8d187840982f9dcb8cdd6813"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga76ba6e93e9250c4f760cdb428c1f9b66">dlseq_vend</a>(head)&#160;&#160;&#160;((head)-&gt;first + (dlseq_count(head) &gt;&gt; 1))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">得到用于反转的终止位置的迭代器  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga76ba6e93e9250c4f760cdb428c1f9b66"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafa2050bc44614406748ffe33c6ac9a8e"></a><!-- doxytag: member="dlseq.h::dlseq_vnext" ref="gafa2050bc44614406748ffe33c6ac9a8e" args="(i, r)" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>dlseq_vnext</b>(i, r)&#160;&#160;&#160;do { ++(i); --(r); } while (0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaf4891f2fccdd0ceed3bc3051f54951c6">dlseq_vswap</a>(type, i, r)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">交换反转操作  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaf4891f2fccdd0ceed3bc3051f54951c6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga4f45f7c4d2ebabb744fbaab175f4128b">dlseq_reverse</a>(type, head)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">反转表  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga4f45f7c4d2ebabb744fbaab175f4128b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga01367e1ec99347d055599c797fb484cd">dlseq_serialize</a>(type, head, buf)&#160;&#160;&#160;memcpy(buf, (head)-&gt;first, sizeof(type) * dlseq_count(head))</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">序列化  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga01367e1ec99347d055599c797fb484cd"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga311df7cdf33e89ae2888408ac946827b">dlseq_fill</a>(type, begin, end, val)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">用val填充区域  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga311df7cdf33e89ae2888408ac946827b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae59f3e47930b766b879c7b29d0f2218e">dlseq_generate</a>(type, begin, end, generator)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">使用输入产生器来填充区域  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae59f3e47930b766b879c7b29d0f2218e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa7b9575d98c17fcde6612f91f79b953b">dlseq_is_heap</a>(type, begin, end, greater, res)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断区域是否是一个最大堆  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaa7b9575d98c17fcde6612f91f79b953b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gacf5d0d361eced90bf9bb1bac269f8d0f"></a><!-- doxytag: member="dlseq.h::__dlseq_ret_gt" ref="gacf5d0d361eced90bf9bb1bac269f8d0f" args="(i, j, r, greater)" -->
#define&#160;</td><td class="memItemRight" valign="bottom"><b>__dlseq_ret_gt</b>(i, j, r, greater)&#160;&#160;&#160;if (greater((i), (j))) { (r) = 0; break; } ++(i)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga54a2e34c3ae32b16f143a305d6e52931">dlseq_push_heap</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">将区域最后一个节点插入到堆中  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga54a2e34c3ae32b16f143a305d6e52931"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga62bf84e92b19a7191b1337f9698b525a">dlseq_pop_heap</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">弹出区域中堆的顶点节点  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga62bf84e92b19a7191b1337f9698b525a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><b>__dlseq_adjust_heap</b>(type, base, first, last, greater)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gafd902927efafe9ca45985b21a6097284">dlseq_make_heap</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">将一段区域建立成最大堆  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gafd902927efafe9ca45985b21a6097284"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaeed9eecdd875ae3bae1e27ca01de5cd7">dlseq_sort_heap</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">对最大堆进行排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gaeed9eecdd875ae3bae1e27ca01de5cd7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga9777d7ab606e4f51bbdbf972da459396">dlseq_shuffle</a>(type, begin, end, _RAND)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">对区域内的节点进行随机排列  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga9777d7ab606e4f51bbdbf972da459396"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga4aed9d38a685cd50a50a146b80c906d9">dlseq_sort_insert</a>(type, head, begin, end, newly, greater_equal)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">按序插入  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga4aed9d38a685cd50a50a146b80c906d9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga0e70efb40f7d7cc678af7150990a2abb">dlseq_is_sorted</a>(type, begin, end, greater_equal, res)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">判断区域是否是已排序的  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga0e70efb40f7d7cc678af7150990a2abb"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga2277c5ed79931683f4e900a5b0a6db47">dlseq_bubble_sort</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">冒泡排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga2277c5ed79931683f4e900a5b0a6db47"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gab39a605aa355fd3dff3e38cc5b02fc9e">dlseq_oddeven_sort</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">奇偶排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gab39a605aa355fd3dff3e38cc5b02fc9e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><b>__dlseq_oddeven_scan</b>(start, type, greater)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gabddc64a8dc69455900d3e1b359f4df46">dlseq_cocktail_sort</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">鸡尾酒排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gabddc64a8dc69455900d3e1b359f4df46"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae89fb9dc0c9a16ec88160cf6d5b7584a">dlseq_comb_sort</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">梳子排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae89fb9dc0c9a16ec88160cf6d5b7584a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gab0b9b9efee02a2040aeef78b2a4f8b00">dlseq_select_sort</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">选择排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gab0b9b9efee02a2040aeef78b2a4f8b00"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gade71f93f6b1deea1b17f5b15ef2da6e0">dlseq_insert_sort</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">插入排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gade71f93f6b1deea1b17f5b15ef2da6e0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae061eca6e3a36bc7fb8b3e19cc3c2c0a">dlseq_shell_sort</a>(type, begin, end, greater)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">希尔排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gae061eca6e3a36bc7fb8b3e19cc3c2c0a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga0e81257e6808089aea04c746c3b14b0b">COUNTING_SIZE</a>(_min, _max)&#160;&#160;&#160;((_max) - (_min) + 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">计数排序计数缓存大小  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga0e81257e6808089aea04c746c3b14b0b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gabe56db9f8a1c3e4e29a31b7597b9b59e">PIGEONHOLE_SIZE</a>(_max)&#160;&#160;&#160;((_max) + 1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">鸽巢排序计数缓存大小  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gabe56db9f8a1c3e4e29a31b7597b9b59e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga0b0c8c04814080521e5951cc3cb293b7">dlseq_counting_sort</a>(type, begin, end, hole, _min, _max)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">计数排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#ga0b0c8c04814080521e5951cc3cb293b7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad3c68c03522faaa7f7be96cd94aaf62a">dlseq_pigeonhole_sort</a>(type, begin, end, hole, _max)&#160;&#160;&#160;dlseq_counting_sort(type, begin, end, hole, 0, _max)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">鸽巢排序  <a href="group___xE5_x8F_x8C_xE7_xAB_xAF_xE7_xBA_xBF_xE5_xBD_xA2_xE5_xBA_x8F_xE8_xA1_xA8.html#gad3c68c03522faaa7f7be96cd94aaf62a"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="func-members"></a>
函数</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8bb333721012c718ede931ddd3c03263"></a><!-- doxytag: member="dlseq.h::__dlseq_check" ref="ga8bb333721012c718ede931ddd3c03263" args="(char *first, char *last, char *end, char *base)" -->
static int&#160;</td><td class="memItemRight" valign="bottom"><b>__dlseq_check</b> (char *first, char *last, char *end, char *base)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga4c77c3c40731afed3f4e886b4da47673"></a><!-- doxytag: member="dlseq.h::__dlseq_copyable" ref="ga4c77c3c40731afed3f4e886b4da47673" args="(char *dst, char *src, char *s_first, char *s_last, char *d_base, char *d_end)" -->
static int&#160;</td><td class="memItemRight" valign="bottom"><b>__dlseq_copyable</b> (char *dst, char *src, char *s_first, char *s_last, char *d_base, char *d_end)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab07f8126fe670264331efe3fb53d7f65"></a><!-- doxytag: member="dlseq.h::__dlseq_exist" ref="gab07f8126fe670264331efe3fb53d7f65" args="(char *first, char *last, char *itr)" -->
static int&#160;</td><td class="memItemRight" valign="bottom"><b>__dlseq_exist</b> (char *first, char *last, char *itr)</td></tr>
</table>
<hr/><a name="_details"></a><h2>详细描述</h2>
<div class="textblock"><p>Double-ended linear sequence list. </p>
<p>Copyright (C) 2012-2022, Henry Kwok 郭弘扬. All rights reserved </p>

<p>在文件<a class="el" href="dlseq_8h_source.html">dlseq.h</a>中定义。</p>
</div></div>
<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>全部</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>数据结构</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>文件</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>函数</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>变量</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>类型定义</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>宏定义</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<hr class="footer"/><address class="footer"><small>Generated at 2015年七月16日 星期四 12:00:39 for Navo Portable Library by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.3 </small></address>
</body>
</html>
